As is well known, business processes are often implemented using software running on computer systems. It is frequently necessary for such processes to interact with communication systems, for example, in order to handle customer communications, locate and contact employees, coordinate conferences or meetings, and so on.
Conventional business process design approaches may use a standard business process execution language (BPEL). For example, Web Services BPEL (BPEL4WS) is described in Working Draft 01, wsbpel-specification-draft-01, 08 Sep. 2004, OASIS Open, Inc. BPEL4WS provides a language for the formal specification of business processes which permits such processes to interact with one another through Web Services interfaces. Web Services is an industry standard for application integration, and is described in greater detail in W3C, 2003c, “Web Services Architecture,” http://www.w3.org/TR/ws-arch, which is incorporated by reference herein. It leverages existing open standards, such as Hypertext Transfer Protocol (HTTP), Transmission Control Protocol/Internet Protocol (TCP/IP), eXtensible Mark-up Language (XML), Universal Description, Discovery and Integration (UDDI), Web Services Description Language (WSDL) and Simple Object Access Protocol (SOAP), and it is language and platform independent.
Although conventional approaches based on BPEL4WS or other similar techniques have facilitated interaction between different business processes, they fail to provide an efficient and flexible means for incorporation of generic communications flow and execution capabilities into the business processes. As a result, such approaches often result in business software applications which are unduly limited in terms of the particular communications channels, devices or protocols with which they can operate. There is generally little or no ability in conventional practice to integrate generic communications flow and execution capabilities into a business process flow design in a manner that is independent of the particular channels, devices, protocols or other characteristics of a given communication system.
Accordingly, it is apparent that a need exists for improved techniques for incorporating communications flow and execution capabilities into business processes.